home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 4 / ETO Development Tools 4.iso / Tools - Objects / MacApp / MacApp 3.0a2 / CPlusIncludes / CTBUtilities.h < prev    next >
Text File  |  1991-05-01  |  4KB  |  160 lines

  1. /*
  2.     File:        CTBUtilities.h
  3.  
  4.     Copyright:    © 1990 by Apple Computer, Inc.
  5.                 All rights reserved.
  6.  
  7. */
  8.  
  9. #ifndef __CTBUTILITIES__
  10. #define __CTBUTILITIES__
  11.  
  12. #ifndef    __MEMORY__
  13. #include    <Memory.h>
  14. #endif
  15.  
  16. #ifndef __PACKAGES__
  17. #include    <Packages.h>
  18. #endif
  19.  
  20. #ifndef __GEOMETRY__
  21. #include <Geometry.h>
  22. #endif
  23.  
  24. #ifndef __APPLETALK__
  25. #include <AppleTalk.h>
  26. #endif
  27.  
  28. /*    version of Comm Toolbox Utilities    */
  29. #define    curCTBUVersion            2
  30.  
  31. /*    Error codes/types    */
  32. typedef        OSErr    CTBUErr;
  33.  
  34. #define        ctbuGenericError    (-1)
  35. #define        ctbuNoErr            0
  36.  
  37. /*    Dialog Item List Manipulation Constants    */
  38. typedef short DITLMethod;
  39. enum {
  40.     overlayDITL,
  41.     appendDITLRight,
  42.     appendDITLBottom
  43. };
  44.  
  45. /*    Choose return codes    */
  46. enum {
  47.     chooseDisaster = -2,
  48.     chooseFailed,
  49.     chooseAborted,
  50.     chooseOKMinor,
  51.     chooseOKMajor,
  52.     chooseCancel
  53. };
  54.  
  55. /*    NuLookup return codes    */
  56. enum {
  57.     nlOk,
  58.     nlCancel,
  59.     nlEject
  60. };
  61.     
  62. /*    Name filter proc return codes    */
  63. enum {
  64.     nameInclude = 1,
  65.     nameDisable,
  66.     nameReject
  67. };
  68.     
  69. /*    Zone filter proc return codes    */
  70. enum {
  71.     zoneInclude = 1,
  72.     zoneDisable,
  73.     zoneReject
  74. };
  75.     
  76. /*    Values for hookProc items        */
  77. #define        hookOK                1
  78. #define        hookCancel             2
  79. #define        hookOutline            3
  80. #define        hookTitle            4
  81. #define        hookItemList        5
  82. #define        hookZoneTitle        6
  83. #define        hookZoneList        7
  84. #define        hookLine            8
  85. #define        hookVersion            9
  86. #define        hookReserved1        10
  87. #define        hookReserved2         11
  88. #define        hookReserved3        12
  89. #define        hookReserved4        13
  90. /*    "virtual" hookProc items    */
  91. #define        hookNull            100
  92. #define        hookItemRefresh        101
  93. #define        hookZoneRefresh        102
  94. #define        hookEject            103
  95. #define        hookPreflight        104
  96. #define        hookPostflight        105
  97. #define        hookKeyBase            1000
  98.  
  99.  
  100. /*    NuLookup structures/constants    */
  101. struct NLTypeEntry {
  102.     Handle hIcon;
  103.     Str32 typeStr;
  104. };
  105.  
  106. typedef NLTypeEntry NLType[4];
  107.  
  108. struct NBPReply {
  109.     EntityName    theEntity;
  110.     AddrBlock    theAddr;
  111. };
  112.  
  113. typedef struct NBPReply NBPReply;
  114.  
  115. typedef pascal short (*NameFilterProcPtr)(EntityName theEntity);
  116. typedef pascal short (*ZoneFilterProcPtr)(Str32& theZone);
  117.  
  118. typedef NameFilterProcPtr nameFilterProcPtr;
  119. typedef ZoneFilterProcPtr zoneFilterProcPtr;
  120.  
  121. #ifdef __cplusplus
  122. extern "C" {
  123. #endif
  124. pascal CTBUErr    InitCTBUtilities(void);
  125. pascal short     CTBGetCTBVersion(void);
  126.  
  127. pascal void        AppendDITL(DialogPtr theDialog, Handle theHandle, DITLMethod method);
  128. pascal short        CountDITL(DialogPtr theDialog);
  129. pascal void        ShortenDITL(DialogPtr theDialog, short numberItems);
  130.  
  131. pascal short     NuLookup(Point where, ConstStr255Param prompt, short numTypes, 
  132.                               NLType typeList, NameFilterProcPtr nameFilter, 
  133.                               ZoneFilterProcPtr zoneFilter, DlgHookProcPtr hookProc,
  134.                               NBPReply& theReply);
  135.  
  136. pascal short     NuPLookup(Point where, ConstStr255Param prompt, short numTypes, 
  137.                               NLType typeList, NameFilterProcPtr nameFilter, 
  138.                               ZoneFilterProcPtr zoneFilter, DlgHookProcPtr hookProc, 
  139.                               long userData, short dialogID,
  140.                               ModalFilterProcPtr filterProc, 
  141.                               NBPReply& theReply);
  142.                               
  143. pascal short     StandardNBP(Point where, ConstStr255Param prompt, short numTypes, 
  144.                               NLType typeList, NameFilterProcPtr nameFilter, 
  145.                               ZoneFilterProcPtr zoneFilter, DlgHookProcPtr hookProc,
  146.                               NBPReply& theReply);
  147.  
  148. pascal short     CustomNBP(Point where, ConstStr255Param prompt, short numTypes, 
  149.                               NLType typeList, NameFilterProcPtr nameFilter, 
  150.                               ZoneFilterProcPtr zoneFilter, DlgHookProcPtr hookProc, 
  151.                               long userData, short dialogID,
  152.                               ModalFilterProcPtr filterProc, 
  153.                               NBPReply& theReply);
  154.                               
  155.                               
  156. #ifdef __cplusplus
  157. }
  158. #endif
  159.  
  160. #endif __CTBUTILITIES__